/**
 * HTML 工具函数
 */

/**
 * 专门用于处理题目内容中的HTML，对题目内容中的图片和视频设置适中的尺寸
 * @param html HTML 内容
 * @returns 处理后的 HTML 内容
 */
export const modifyQuestionContentImageSizeInHTML = (html: string): string => { 
  if (!html) return ''; 
  
  const tempElement = document.createElement('div'); 
  tempElement.innerHTML = html; 

  // 处理视频标签
  const videoTags = tempElement.querySelectorAll('video'); 
  videoTags.forEach((video) => { 
    video.style.maxWidth = '100%'; 
    video.style.height = 'auto'; 
    video.style.width = 'auto'; 
  });

  // 处理图片标签 - 为题目内容中的图片设置更大的尺寸
  const imgTags = tempElement.querySelectorAll('img'); 
  imgTags.forEach((img) => { 
    img.style.maxWidth = '800px'; 
    img.style.maxHeight = '600px'; 
    img.style.width = 'auto'; 
    img.style.height = 'auto'; 
    img.style.objectFit = 'contain'; 
  });

  // 只处理第一个 p 标签，使其不换行显示
  const firstP = tempElement.querySelector('p');
  if (firstP) {
    firstP.style.display = 'inline';
    firstP.style.margin = '0';
  }

  return tempElement.innerHTML;
};

/**
 * 专门用于处理选项内容中的HTML，对选项中的图片设置较小的尺寸
 * @param html HTML 内容
 * @returns 处理后的 HTML 内容
 */
export const modifyOptionImageSizeInHTML = (html: string): string => { 
  if (!html) return ''; 
  
  const tempElement = document.createElement('div'); 
  tempElement.innerHTML = html; 

  // 处理视频标签
  const videoTags = tempElement.querySelectorAll('video'); 
  videoTags.forEach((video) => { 
    video.style.maxWidth = '100%'; 
    video.style.height = 'auto'; 
    video.style.width = 'auto'; 
  });

  // 处理图片标签 - 为选项中的图片设置适中的尺寸
  const imgTags = tempElement.querySelectorAll('img'); 
  imgTags.forEach((img) => { 
    img.style.maxWidth = '150px'; 
    img.style.maxHeight = '120px'; 
    img.style.width = 'auto'; 
    img.style.height = 'auto'; 
    img.style.objectFit = 'contain'; 
  });

  // 只处理第一个 p 标签，使其不换行显示
  const firstP = tempElement.querySelector('p');
  if (firstP) {
    firstP.style.display = 'inline';
    firstP.style.margin = '0';
  }

  return tempElement.innerHTML;
};